// CSE571 - game-manager.h
// Authors: Jonathan Wald, Daniel Sarfati, Guangle Fan
// This class manages all the different connections that a client-side player
// may have.           

#ifndef GAME_MANAGER_H
#define GAME_MANAGER_H

#include <vector>
#include <string>
#include <iostream>
#include <fstream>

#include "ace/SOCK_Stream.h"

class PlayerGame;

using namespace std;

class GameManager {

 public:
   ~GameManager();
   static GameManager* instance(); 
   int parse_file(char * filename);
   
   string get_name() { return name; }
   void set_name(string name) { this->name = name; }
   PlayerGame* get_game(int i) { return games[i]; }
   unsigned int num_games() { return games.size(); }

 private:
   string name;
   vector<PlayerGame*> games;
   
   static GameManager* instance_;
   
};


#endif
